A Minimal CISC Processor Architecture for Field Programmable Gate Arrays
نویسنده
چکیده
Decreasing cost and increased complexity of modern field programmable gate array (FPGA) devices, such as Xilinx’s Spartan 3[1], have allowed the development of true system on a chip (SOC) architectures for embedded micro-controller and ubiquitous computing applications. To minimize the size and, therefore, the cost of the required FPGA, consideration must be given to matching the desired functionality to the FPGA’s resources. This paper describes the initial work in comparing software, firmware and hardware biased solutions and a reconsideration of complex instruction set computer (CISC) based processor architectures to achieve this aim. One of the main developments in FPGA design that has permitted true SOC architectures to be developed is the increasing amount of onchip memory. In general, this can be divided into two types; distributed and block RAM. Distributed RAM is implemented from lookup tables within the general purpose logic resources of the FPGA, whereas block RAM is a true dual port memory element, with configurable address and data bus widths, organized in columns throughout the FPGA. To maximise the speed and area performance of these devices and, therefore, minimize cost, consideration of these hardware resources within the FPGA must be made before a design solution is made. A typical embedded FPGA micro-controller is normally based on a RISC processor core. This processor uses block RAM for its data and instruction memory. However, its instruction decoder and control logic are constructed from general purpose logic, reducing FPGA resources that are available for peripheral devices. An alternative solution to minimise this problem is the CISC processor core. This processor again uses block RAM for its data and instruction memory and also for its control logic, as part of a microprogrammed (firmware) controller. This frees up general purpose logic, allowing more support to be included within the processor for specific applications, for peripheral devices, or simply to allow smaller, cheaper FPGAs to be used. In the 1950s Professor M.V. Wilkes first recognised that a processor’s control unit was implemented as a series of discrete steps much like an ordinary computer program [2]. This lead to the development of microprogrammed control units that are commonly found in CISC processors, where each machine instruction is interpreted by a microprogram stored in control memory within the processor. These microprograms are composed of a series of microinstructions, which themselves can be composed of a series of nanoinstructions [3] defining the control signals required to perform the desired machine operation, as shown in figure 1.
منابع مشابه
Design and Implementation of Field Programmable Gate Array Based Baseband Processor for Passive Radio Frequency Identification Tag (TECHNICAL NOTE)
In this paper, an Ultra High Frequency (UHF) base band processor for a passive tag is presented. It proposes a Radio Frequency Identification (RFID) tag digital base band architecture which is compatible with the EPC C C2/ISO18000-6B protocol. Several design approaches such as clock gating technique, clock strobe design and clock management are used. In order to reduce the area Decimal Matrix C...
متن کاملField Programmable Gate Array–based Implementation of an Improved Algorithm for Objects Distance Measurement (TECHNICAL NOTE)
In this work, the design of a low-cost, field programmable gate array (FPGA)-based digital hardware platform that implements image processing algorithms for real-time distance measurement is presented. Using embedded development kit (EDK) tools from Xilinx, the system is developed on a spartan3 / xc3s400, one of the common and low cost field programmable gate arrays from the Xilinx Spartan fami...
متن کاملA Scalable GF(p) Elliptic Curve Processor Architecture for Programmable Hardware
This work proposes a new elliptic curve processor architecture for the computation of point multiplication for curves defined over fields GF (p). This is a scalable architecture in terms of area and speed specially suited for memory-rich hardware platforms such a field programmable gate arrays (FPGAs). This processor uses a new type of high-radix Montgomery multiplier that relies on the precomp...
متن کاملReconfigurable Computing A review of the technology and its architecture
Reconfigurable computing is a computer architecture which is intended to fill the gap between the hardware and the software, achieving potentially much higher performance than software, while maintaining a higher level of flexibility than hardware. Most commonly and widely used high speed computing fabrics deployed in reconfigurable computing are field-programmable gate arrays (FPGAs). This pap...
متن کاملCustomisable Multi-Processor Acceleration of Inductive Logic Programming
Parallel approaches to Inductive Logic Programming (ILP) are adopted to address the computational complexity in the learning process. Existing parallel ILP implementations build on conventional general-purpose processors. This paper describes a different approach, by exploiting user-customisable parallelism available in advanced reconfigurable devices such as Field-Programmable Gate Arrays (FPG...
متن کامل